//配置getters
export default {
  // 有时候我们需要从 store 中的 state 中派生出一些状态，例如对列表进行过滤并计数等等 需要计算，我们就用到了getters 类似于vue中的计算属性
  // getter 的返回值会根据它的依赖被缓存起来，且只有当它的依赖值发生了改变才会被重新计算
  // 因为数据是state派生出来的，所以getters中的函数接收一个参数是state
  movieScore(state) {
    return state.movieList.filter(item => {
      return item.score <= 7
    })
  },
  movieTimes(state) {
    //如果计算属性在计算的时候，需要接收参数，则getters函数需要返回一个函数
    return ({ start, over }) => {
      return state.movieList.filter(item => {
        return parseInt(item.duration) >= start && parseInt(item.duration) <= over
      })
    }
  }
}
